נגיד כמו ב PMA.
תודה :)
6 תשובות
באופן כללי תוכל להגדיר משך חיים מסוים לקוקי של הסשן באמצעות הפקודה session_set_cookie_params
בפרמטר lifetime שים את הערך הרצוי בשניות.
הקוקי יפוג (ואיתו הסשן) לאחר זמן מה.
PHP תדאג לעדכן את הקוקי אחרי כל בקשה לשרת כדי למשוך את משך החיים של משתמשים פעילים.
לאחר שהסשן יפוג, תצטרך בכל עמוד לבדוק את הסשן - ואם הוא לא קיים - להעביר לעמוד ההתחברות.
אבל איך אני אדע אם המשתמש לא פעיל?
אני רוצה שה session_set_cookie_params יפעל רק אחרי 15 דקות ללא פעילות (לדוגמא).
אתה בעצמך לא צריך לדעת שום דבר.
לכל קוקי יש אורך חיים מסוים, שלאחר מכן הדפדפן מוחק את אותו הקוקי.
באמצעות הפקודה הזו תוכל לומר לדפדפן מה אורך החיים הרצוי. אתה לא צריך להפעיל את הפונקציה בעצמך לאחר 15 דקות. הדפדפן ימחק את הקוקי 15 דקות לאחר שהקוקי נוצר או התעדכן לאחרונה. את העדכון לאחרונה PHP תעשה בעמצה בכל בקשה לשרת בלי שאתה תצטרך לעשות משהו.
לא נראה לי שהבנת את השאלה שלי,
אם אתה יוצר קוקי, היא נמחקת אחרי כמה זמן (15 דקות לדוגמא).
אז איך אני עושה שהיא כן תימחק אחרי 15 דקות אבל רק אם אין פעילות.
אתה אומר שאני צריך ליצור אותה כל פעם מחדש כאשר אני מבצע פעולה? לא הבנתי
אם בתחלית העמוד יש לך את השורה session_start
אז אתה לא צריך לעשות שום דבר. PHP בעצמה תעדכן את הקוקי לפלוס 15 דקות.
איך זה עובד:
השעה 12:00
בקשה לשרת -> session_start -> השרת שולח לדפדפן קוקי שהדפדפן ימחק בעוד פלוס 15 דקות 12:15 -> לא צריך לעשות שום דבר, הדפדפן ימחק לבד.
בקשה נוספת לשרת לאחר 3 דקות 12:03 -> עוד פעם session_start -> השרת שולח לדפדפן את אותו הקוקי ששוב ימחק בעוד פלוס 15 דקות. 12:18 -> לא צריך לעשות שום דבר. הדפדפן ימחק את הקוקי לבד ב 12:18
שוב פעם:
את העדכון לאחרונה PHP תעשה בעמצה בכל בקשה לשרת בלי שאתה תצטרך לעשות משהו (חוץ מלקרוא ל session_start).